package cn.webwheel.tutorials.helloworld;

import cn.webwheel.Filter;
import cn.webwheel.FilterChain;

// 自定义过滤器作为访问计数器
public class CountFilter implements Filter {

    private int count;

    //初始化
    public void init() throws Exception {
        count = 0;
        System.out.println("CountFilter启动");
    }

    public boolean process(FilterChain chain) throws Exception {
        // 通过chain对象得到应用上下文中的request对象，设置名为count的属性，值为当前的访问量
        chain.getWebContext().getRequest().setAttribute("count", ++count);
        //在服务器端打印出访问次数
        System.out.println("count " + count);
        // 继续执行过滤器链
        return chain.go();
    }

    //销毁
    public void destroy() {
        System.out.println("CountFilter停止");
    }
}
